package com.plug.service;

import com.plug.entity.PlugDatasource;
import org.apache.ibatis.annotations.Param;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

/**
 * Created by admin on 2016/12/19.
 */
public interface IPlugDatasourceService {

    /**
     * 根据名称查询数据�?
     * @param name
     * @return
     */
    PlugDatasource findByName(String name);

    /**
     * 新增数据源
     * @param plugDatasource
     * @return
     */
    int save(PlugDatasource plugDatasource);

    /**
     * 分页查询数据源
     * @param name
     * @param offset
     * @param limit
     * @return
     */
    List<PlugDatasource> pages(String name,Integer offset,Integer limit);


    /**
     * 查询数据总数
     * @param name
     * @return
     */
    int findTotal(String name);

    /**
     * 删除数据源
     * @param id
     * @return
     */
    int delete(Long id);
    /**
     * 根据ID查询
     * @param id
     * @return PlugDatasource
     */
    PlugDatasource findByID(Long id);

    /**
     * 查询所有
     * @return
     */
    List<PlugDatasource> findall();
    /**
     * 根据数据库名称查询属下所有表
     * @param plugDatasource
     * @return
     */
    List<Map<String,Object>> findDataBaseByName(@Param("plugDatasource")PlugDatasource plugDatasource) throws SQLException;
}
